package com.aiwei.tdjk.service;

import com.aiwei.tdjk.dto.response.GetOrganizationMemberResponse;
import com.aiwei.tdjk.entity.OrganizationMember;

import java.util.List;

/**
 * hhb
 * 2017-4-27
 *组织成员service
 */
public interface OrganizationMemberService {
    /**
     * 通过组织ID查询组织成员
     * @param id
     * @return
     */
    List<GetOrganizationMemberResponse> findMemberByOrganization(long id);
    /**
     * 批量新增文娱组织成员
     * @param list
     */
    void batchAdd(List<OrganizationMember> list);

    /**
     * 通过ID查询会员在组织的状态
     * @param id
     */
    OrganizationMember findSatusById(long id);
    /**
     * 查询某个组织成员的信息
     * @param id
     * @return
     */
    GetOrganizationMemberResponse findMemberById(long id);

    /**
     * 通过ID修改组织成员状态
     * @param organizationMember
     * @return
     */
    int updateOrganizationMember(OrganizationMember organizationMember);

    /**
     * 通过组织ID查询组织会员编号
     * @return
     */
    List<OrganizationMember> finMemberByOrganizationId(Long organizationId);
    /**
     * 查询会员号是否重复
     * @param organizationId
     * @param ids
     * @param memberList
     */
    void whetherMemberRepeat(long organizationId,long [] ids,List<OrganizationMember> memberList);

    /**
     * 修改该会员在所有组织的状态
     * @return
     */
    void updateOrganizationByMemberId(Long memberId);
    /**
     * 获取同一社团组织下所有会员id
     * @return
     */
    List<Long> findMemberIdsByOrganizationId(Long organizationId);
    /**
     * 根据会员Id查找组织id
     */
    List<Long> findOrganizationIdsByMemberId(Long memberId);

}
